package com.jimikongjian.service.dao.impl;

import com.jimikongjian.dao.ITag;
import com.jimikongjian.models.Tag;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * Created by fuxiuyang on 17/3/4.
 */
@Service("tagImpl")
public class ITagImpl implements ITag {

    @Autowired
//    @Qualifier("tagMapper")
    private ITag iTag;

    /**
     * 通过id，获取某一标签信息
     *
     * @param id
     * @return List<Tag>
     */
    public List<Tag> getTagListById(int id) {
        if (id > 0){
            return iTag.getTagListById(id);
        }
        return null;
    }

    /**
     * 通过id，获取某一标签信息
     *
     * @param id
     * @return Tag
     */
    public Tag getTagById(int id) {
        if (id > 0){
            List<Tag> tagList = getTagListById(id);
            if (tagList.size() > 0){
                return tagList.get(0);
            }
        }
        return null;
    }

    /**
     * 通过标签，获取数据库中含有该标签字段的所有标签信息
     *
     * @param tag
     * @return List<Tag>
     */
    public List<Tag> getTagListByTag(String tag) {
        if (tag != ""){
            return iTag.getTagListByTag(tag);
        }
        return null;
    }

    /**
     * 创建一条新的标签
     *
     * @param tag
     */
    public void insertTag(Tag tag) {
        if (tag.getTag() != ""){
           iTag.insertTag(tag);
        }
    }

    /**
     * 更新一条新的标签
     *
     * @param tag
     */
    public void updateTag(Tag tag) {
//        不允许更改，有什么不满意的，直接删除
    }

    /**
     * 删除一条新的标签
     *
     * @param tag
     */
    public void deleteTag(Tag tag) {
        if (tag.getId() > 0){
            iTag.deleteTag(tag);
        }
    }
}
